home *** CD-ROM | disk | FTP | other *** search
- /*
- grblk.c
- */
-
- #include <stdio.h>
- #include <egb.h>
- #include <msdos.cf>
-
- #include <ryosuke.h>
- #include <usrlib.h>
-
- void grgetblk(char *buf, int x1, int y1, int xlen, int ylen)
- {
- char para[14];
- DWORD(para + 0) = (unsigned long) buf;
- WORD(para + 4) = getds();
- WORD(para + 6) = x1;
- WORD(para + 8) = y1;
- WORD(para + 10) = x1 + xlen - 1;
- WORD(para + 12) = y1 + ylen - 1;
- EGB_getBlock( EGB_work, para );
- }
-
- void grputblk(int x1, int y1, int xlen, int ylen, char *data, int op)
- {
- char para[14];
- EGB_writeMode(EGB_work, op);
- EGB_color( EGB_work, 3, 0 );
- DWORD(para + 0) = (unsigned long) data;
- WORD(para + 4) = getds();
- WORD(para + 6) = x1;
- WORD(para + 8) = y1;
- WORD(para + 10) = x1 + xlen - 1;
- WORD(para + 12) = y1 + ylen - 1;
- EGB_putBlock( EGB_work, 0, para );
- EGB_writeMode( EGB_work, DrawNORMAL );
- }
-
- void grp_putblk_zoom(int x1, int y1, int xlen, int ylen, char *data,
- int op, int zoomx, int zoomy)
- {
- char para[14];
- EGB_writeMode(EGB_work, op);
- EGB_color(EGB_work, 3, 0);
- DWORD(para + 0) = (unsigned long) data;
- WORD(para + 4) = getds();
- WORD(para + 6) = x1;
- WORD(para + 8) = y1;
- WORD(para + 10) = x1 + xlen*zoomx - 1;
- WORD(para + 12) = y1 + ylen*zoomy - 1;
- WORD(para + 14) = xlen;
- WORD(para + 16) = ylen;
- EGB_putBlockZoom( EGB_work, 0, para );
- EGB_writeMode( EGB_work, DrawNORMAL );
- }
-
- /* end of grblk.c */
-